Mobile communications devices such as cell phones are gaining wider acceptance due to the capabilities being added to such devices. Far from being simple voice communications tools, modern cell phones and related mobile technologies have staked out an important niche in the growing field of personal digital communications.
One factor that is expected to increase the popularity of mobile devices is the development of third generation (3G) technologies. The designation 3G refers to a collection of standards and technologies that can be used in the near future to enhance performance and increase data speed on cell phone networks. In particular, 3G is an International Telecommunication Union (ITU) specification for the third generation of mobile communications technology. A 3G cell phone would, in theory, be compatible with the 3G languages or standards which support enhanced data speeds.
The 3G infrastructure aims to provide packet-switched data to a handheld terminal with data bandwidth measured in hundreds of Kbits/sec. It is intended that 3G will work over wireless air interfaces such as Code Division Multiple Access (CDMA), Wideband CDMA (W-CDMA), and the Time Division Multiple Access (TDMA) based General Packet Radio Service (GPRS). The latter interface is included in the Enhanced Data for GSM, Environment (EDGE) air interface which has been developed specifically to meet the bandwidth needs of 3G cell phones.
Future 3G devices may include features that allow communication with other consumer electronics devices. For example, a standard known as Universal Plug and Play™ (UPnP) provides a way for disparate processing devices to exchange data. The UPnP standard defines an architecture for peer-to-peer network connectivity utilizing a wide variety of electronic devices. The UPnP standard includes standards for service discovery, and is mainly targeted for proximity or ad hoc networks.
Various contributors publish UPnP device and service descriptions, thus creating a way to easily connect devices and simplifying the implementation of networks. UPnP is designed to work in many environments, including the home, businesses, public spaces, and on devices attached to the Internet. The UPnP standard is an open architecture that leverages Web technologies and is designed to provide ad-hoc networking and distributed computing.
The UPnP model is designed to support zero-configuration, networking, and automatic discovery for a wide variety of device categories. This allows a device to dynamically join a network, obtain an IP address, convey its capabilities, and learn about the presence and capabilities of other devices. Other Internet protocols such as Dynamic Host Configuration Protocol (DHCP) and Domain Name Service (DNS) may optionally included in a UPnP network, although they are not required. A device can leave a UPnP network smoothly and automatically without leaving any unwanted state behind.
The UPnP architecture includes mechanisms for discovery of devices on the network and mechanisms for describing capabilities of those devices. The UPnP discovery protocol allow a device to advertise its services to control points on the network utilizing multicast messages. Multicasting refers to a sending a single copy of data to multiple recipients on an Internet Protocol (IP) network. IP multicasting relies on two mechanisms: a group management protocol to establish and maintain multicast groups, and multicast routing protocols to route packets. Multicasting combines the benefits of unicasting and broadcasting. Like unicasting, multicast packets are only routed to network segments that contain the target devices. Like broadcasting, multicasting only requires a single copy of the data to be transmitted, typically by sending streams of User Datagram Protocol (UDP) packets.
On a UPnP network, devices may advertise their capabilities using multicasting. Devices can multicast one or more service announcement messages. Each message describes an embedded device and/or service available from the message's originator. Other devices on the network listen on the multicast address for these service announcement messages. This information can be used to by the devices to utilize UPnP services.
Multicast service announcement messages may include an expiration time value that defines when the advertisements will expire. While the device remains available, the advertisements are continuously re-sent at periods of time that are less than the expiration time. If the device becomes unavailable, the device should explicitly cancel its advertisements. If the device is unable to cancel, the advertisements will expire on their own based on the expiration time contained in the service advertisements.
UPnP provides an alternate mechanism for service discovery besides multicast service announcements. When a device is added to the network, the device may initiate a search for devices of interest on the network. The device initiates this search by multicasting a search message containing a pattern that describes a device or service. If any network entity has an embedded device or service that matches the criteria in the search message, the entities will respond with a message similar to the previously described service advertisement.
It is the goal of UPnP to allow home electronics to be able to interact in order to further the usefulness of such devices. Since a 3G communications device can also typically process data, it is possible for such devices to communicate via UPnP networks. Because 3G mobile communications provide data connectivity and data processing on a device that is extremely portable. This will make such devices indispensable, both in and away from the user's homes. However, providing additional capabilities via mobile communications devices may require adapting the devices in ways that may not have been envisioned in the design of mobile communications architectures.